const { HeartbeatReqType, HeartbeatResType } = require("./wsConstants");

module.exports = (ctx, next) => {
  console.log("WebSocket连接已建立 - group1-------");
  ctx.websocket.send(JSON.stringify(`服务器发送信息-zsyzys`));
  // 处理 group1 分组的逻辑
  //   setTimeout(() => {
  //     ctx.websocket.close(1001, "已关闭");
  //   }, 3000);

  // 接收消息
  ctx.websocket.on("message", (message) => {
    console.log(`接收到消息：${message}`);

    // 解析接收到的消息
    const parsedMessage = JSON.parse(message);

    console.log("parsedMessage", parsedMessage);

    // 判断是否是心跳消息
    if (parsedMessage.type === HeartbeatReqType) {
      console.log("接收到心跳消息，进行响应");

      // 发送心跳响应
      ctx.websocket.send(JSON.stringify({ type: HeartbeatResType }));
    } else {
      // 处理其他消息类型
      // 发送消息
      //   ctx.websocket.send(`服务器已接收到消息：${message}`);
    }
  });

  ctx.websocket.on("close", () => {
    console.log("前端关闭了group1的websocket");
  });
};
